Hand-held optical scanners are used in a variety of applications including text scanning, barcode reading, and picture grabbing. These scanners comprise an optical sensor for acquiring image information that is managed by a central processing unit (CPU) and stored in a memory. The information is typically processed by character recognition software and then sent to a user application such as a word processor, database or spreadsheet.
The viewing area of hand-held scanners at a given it includes only a small portion of the entire scanned medium. Thus in use, a hand-held scanner is made to pass over the entire scanned medium so as to produce a time series of acquired images where each acquired image corresponds to a small portion of the scanned medium. Since the images are acquired at a constant rate, subsequent reconstruction of the scanned medium from the series of acquired images produces a distorted image due to variation in the scanning speed during scanning. A hand held scanner has a reference scanning speed at which the acquired image is identical to the original. The reference scanning speed is the product of the width (in the scanning direction) of the optical sensor and the rate at which images are acquired by the sensor. Locations in the scanned medium acquired when the scanning speed is below the reference speed appear to be stretched or expanded, while locations acquired when the scanning speed is above the reference speed appear compressed. Such distorted images may not be recognizable by character recognition software. Each acquired image must thus be processed by rescaling it in the scanning direction by a correction factor equal to the instantaneous scanning speed divided by the reference speed. Prior art scanners therefore comprise means for continuously monitoring the instantaneous scanning speed. U.S. Pat. No. 5,083,218, for example, discloses a hand-held scanner comprising a wheel that rolls along the scanned medium during scanning for measuring the instantaneous speed at every moment during the scanning. U.S. Pat. No. 5,023,922 discloses a hand-held scanner with a 2-dimensional optical sensor in which the instantaneous speed is calculated from the time interval required for an image to traverse the sensor. The presence of a wheel or a two dimensional sensor makes the hand held scanner bulky and awkward to use.
There is therefore a need in the art to provide a scanner that substantially reduces or overcomes the disadvantages of prior art scanners.
Glossary
There follows a glossary of terms used in the following description and set of claims together with their definitions, some of them known in the art, others having been coined.
Field of view—the portion of the scanned medium acquired by a scanner at one instant.
Scanned image—a two-dimensional image created by moving a scanner over a surface. The scanned image is compiled from the time series of fields of view acquired during scanning.
Text image—A scanned image composed of text in any language.
Cluster—A contiguous group of black pixels in a text image. A black cluster is typically a single character but may be a portion of a single character, or a union of two or more characters.
Horizontal segment—A line of contiguous black pixels parallel to the text line, one pixel high. The length of a horizontal segment is the number of its black pixels.
Stack—A contiguous array of at least a predetermined number of horizontal segments in a scanned image with the following properties:                (a) No two of the horizontal segments are collinear.        (b) The ratio of the length of the longest horizontal segment in the stack to that of the shortest horizontal segment does not exceed a predetermined value.        (c) adjacent horizontal segments in the stack at least partially overlap (i.e. in a given pair of adjacent horizontal segments in the stack, there is at least one black pixel in each of the two horizontal segments acquired from the same field of view).Each stack has associated with it a height that may be defined, for example, as the number of its composite horizontal segments. Each stack also has associated with it a width that may be defined, for example, as the average length of its horizontal composite segments, the minimal length of its horizontal composite segments, or the length of an arbitrary one of its horizontal segments. The invention is not to be considered as being bound by these definitions, and other definitions of height and width are contemplated within the scope of the invention. Each stack also has associated with it a bounding rectangle of minimum dimensions in which two opposite sides are vertical and two opposite sides are horizontal.        
Essentially vertical stack—A stack whose height exceeds a predetermined number in which the ratio of the width of the stack to the width of its bounding rectangle exceeds a predetermined value.
Character recognition software—Any software package for converting a text image into a string of ASCII characters, for example Optical Character Recognition (OCR) software.
Stop interval—A series of consecutive fields of view, the number of which exceed a predetermined number, all of which are nearly identical to the first field of view. Two fields of view are considered to be nearly identical if there does not exist in one of the fields of view a subfield of contiguous pixels of length greater than a predetermined length in which all of the pixels are different from the corresponding pixels in the other field of view.
Font ratio—the ratio of the mode character height (the most common character height) to the most common essentially vertical line width of the characters in a particular font. The font ratio is a characteristic constant of a given font. For most fonts, the font ratio is typically, although not necessarily, around 6.
Correction factor—the instantaneous scanning speed divided by the reference speed.